When querying data from a database or other sources of data, a user is typically provided with several query options (or referred to as query indexes or indexes) by systems currently in existence, and after a user chooses a certain index, the systems currently in existence collocate restrictions according to the index, combine all the restrictions based on a logic relationship of “and” or “or,” generate query instructions, query and filter data from the database, and display the filtered result to the user. In such systems, the user may be unable to query and filter data by providing a natural language sentence.